package com.ruoyi.system.service.impl;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import com.alibaba.csp.sentinel.util.AssertUtil;
import com.ruoyi.system.api.domain.SysNucleicAcidUser;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.SysNucleicAcidUserMapper;
import com.ruoyi.system.service.ISysNucleicAcidUserService;

/**
 * 核酸检测用户CRUDService业务层处理
 * 
 * @author ruoyi
 * @date 2022-10-01
 */
@Service
@Slf4j
public class SysNucleicAcidUserServiceImpl implements ISysNucleicAcidUserService 
{
    @Autowired
    private SysNucleicAcidUserMapper sysNucleicAcidUserMapper;

    /**
     * 查询核酸检测用户CRUD
     * 
     * @param userId 核酸检测用户CRUD主键
     * @return 核酸检测用户CRUD
     */
    @Override
    public SysNucleicAcidUser selectSysNucleicAcidUserByUserId(Long userId)
    {
        return sysNucleicAcidUserMapper.selectSysNucleicAcidUserByUserId(userId);
    }

    /**
     * 查询核酸检测用户CRUD列表
     * 
     * @param sysNucleicAcidUser 核酸检测用户CRUD
     * @return 核酸检测用户CRUD
     */
    @Override
    public List<SysNucleicAcidUser> selectSysNucleicAcidUserList(SysNucleicAcidUser sysNucleicAcidUser)
    {
        return sysNucleicAcidUserMapper.selectSysNucleicAcidUserList(sysNucleicAcidUser);
    }

    /**
     * 新增核酸检测用户CRUD
     * 
     * @param sysNucleicAcidUser 核酸检测用户CRUD
     * @return 结果
     */
    @Override
    public int insertSysNucleicAcidUser(SysNucleicAcidUser sysNucleicAcidUser)
    {
        return sysNucleicAcidUserMapper.insertSysNucleicAcidUser(sysNucleicAcidUser);
    }

    /**
     * 修改核酸检测用户CRUD
     * 
     * @param sysNucleicAcidUser 核酸检测用户CRUD
     * @return 结果
     */
    @Override
    public int updateSysNucleicAcidUser(SysNucleicAcidUser sysNucleicAcidUser)
    {
        return sysNucleicAcidUserMapper.updateSysNucleicAcidUser(sysNucleicAcidUser);
    }

    /**
     * 批量删除核酸检测用户CRUD
     * 
     * @param userIds 需要删除的核酸检测用户CRUD主键
     * @return 结果
     */
    @Override
    public int deleteSysNucleicAcidUserByUserIds(Long[] userIds)
    {
        return sysNucleicAcidUserMapper.deleteSysNucleicAcidUserByUserIds(userIds);
    }

    /**
     * 删除核酸检测用户CRUD信息
     * 
     * @param userId 核酸检测用户CRUD主键
     * @return 结果
     */
    @Override
    public int deleteSysNucleicAcidUserByUserId(Long userId)
    {
        return sysNucleicAcidUserMapper.deleteSysNucleicAcidUserByUserId(userId);
    }

    @Override
    public void sendSmsCode(String phone) {
        // 校验，参数不能为空，使用断言工具判断手机号
        AssertUtil.notEmpty(phone, "手机号不能为空！！");

        Date date = new Date();

        //获取随机验证码
        String random = (int) ((Math.random() * 9 + 1) * 100000) + "";
        //获取时间戳
        String timestamp  = new SimpleDateFormat("yyyyMMddHHmmss").format(date);

        log.info("您的验证码为" + random);
    }
}
